using System;
using System.Collections.Generic;
using System.Text;
namespace Decision.BusinessLayer
{
	public class DCS_MASTER
	{

		#region InnerClass
		public enum DCS_MASTERFields
		{
			MASTER_ID,
			CASE_TYPE_ID,
			NOTICE,
			CODE_NO,
			CREATE_DECISION_DATE,
			VOTE_TYPE_ID,
			VOTE_CASE,
			COUNTY_NO,
			COUNTY,
			AUMPHER,
			TUMBON,
			PROVINCE,
			TERM_NO,
			DECISION_NO,
			CASE_NO,
			RESULT_NO,
			RESULT_TYPE,
			COURT_TYPE_ID,
			COURT_B_SUPREME_TYPE_ID,
			COURT_A_SUPREME_TYPE_ID,
			COURT_CONSTITU_TYPE,
			SIGN_DATE,
			WARN_SIGN_DATE,
			VOTE_DATE,
			RESULT_DATE,
			WARN_RESULT_DATE,
			REQUEST_NAME,
			RESPON_NAME,
			ALLEGATION,
			LAWYER_ID,
			CREATED_DATE_TIME,
			CREATED_USER,
			UPDATED_DATE_TIME,
			UPDATED_USER,
			STATUS,
			REMARK,
			COURT_APPEALS_ID,
            DECISION_TYPE_ETC
		}
		#endregion

		#region Data Members

			int _mASTER_ID;
			int? _cASE_TYPE_ID;
			int? _nOTICE;
			string _cODE_NO;
			DateTime? _cREATE_DECISION_DATE;
			int? _vOTE_TYPE_ID;
			int? _vOTE_CASE;
			string _cOUNTY_NO;
			string _cOUNTY;
			string _aUMPHER;
			string _tUMBON;
			string _pROVINCE;
			string _tERM_NO;
			string _dECISION_NO;
			string _cASE_NO;
			string _rESULT_NO;
			int? _rESULT_TYPE;
			int? _cOURT_TYPE_ID;
			int? _cOURT_B_SUPREME_TYPE_ID;
			int? _cOURT_A_SUPREME_TYPE_ID;
			int? _cOURT_CONSTITU_TYPE;
			DateTime? _sIGN_DATE;
			DateTime? _wARN_SIGN_DATE;
			DateTime? _vOTE_DATE;
			DateTime? _rESULT_DATE;
			DateTime? _wARN_RESULT_DATE;
			string _rEQUEST_NAME;
			string _rESPON_NAME;
			string _aLLEGATION;
			int? _lAWYER_ID;
			DateTime? _cREATED_DATE_TIME;
			int? _cREATED_USER;
			DateTime? _uPDATED_DATE_TIME;
			int? _uPDATED_USER;
			int? _sTATUS;
			string _rEMARK;
			int? _cOURT_APPEALS_ID;
            string _dECISION_TYPE_ETC;

            public string DECISION_TYPE_ETC
            {
                get { return _dECISION_TYPE_ETC; }
                set { _dECISION_TYPE_ETC = value; }
            }

		#endregion

		#region Properties

		public int  MASTER_ID
		{
			 get { return _mASTER_ID; }
			 set
			 {
				 if (_mASTER_ID != value)
				 {
					_mASTER_ID = value;
					 PropertyHasChanged("MASTER_ID");
				 }
			 }
		}

		public int?  CASE_TYPE_ID
		{
			 get { return _cASE_TYPE_ID; }
			 set
			 {
				 if (_cASE_TYPE_ID != value)
				 {
					_cASE_TYPE_ID = value;
					 PropertyHasChanged("CASE_TYPE_ID");
				 }
			 }
		}

		public int?  NOTICE
		{
			 get { return _nOTICE; }
			 set
			 {
				 if (_nOTICE != value)
				 {
					_nOTICE = value;
					 PropertyHasChanged("NOTICE");
				 }
			 }
		}

		public string  CODE_NO
		{
			 get { return _cODE_NO; }
			 set
			 {
				 if (_cODE_NO != value)
				 {
					_cODE_NO = value;
					 PropertyHasChanged("CODE_NO");
				 }
			 }
		}

		public DateTime?  CREATE_DECISION_DATE
		{
			 get { return _cREATE_DECISION_DATE; }
			 set
			 {
				 if (_cREATE_DECISION_DATE != value)
				 {
					_cREATE_DECISION_DATE = value;
					 PropertyHasChanged("CREATE_DECISION_DATE");
				 }
			 }
		}

		public int?  VOTE_TYPE_ID
		{
			 get { return _vOTE_TYPE_ID; }
			 set
			 {
				 if (_vOTE_TYPE_ID != value)
				 {
					_vOTE_TYPE_ID = value;
					 PropertyHasChanged("VOTE_TYPE_ID");
				 }
			 }
		}

		public int?  VOTE_CASE
		{
			 get { return _vOTE_CASE; }
			 set
			 {
				 if (_vOTE_CASE != value)
				 {
					_vOTE_CASE = value;
					 PropertyHasChanged("VOTE_CASE");
				 }
			 }
		}

		public string  COUNTY_NO
		{
			 get { return _cOUNTY_NO; }
			 set
			 {
				 if (_cOUNTY_NO != value)
				 {
					_cOUNTY_NO = value;
					 PropertyHasChanged("COUNTY_NO");
				 }
			 }
		}

		public string  COUNTY
		{
			 get { return _cOUNTY; }
			 set
			 {
				 if (_cOUNTY != value)
				 {
					_cOUNTY = value;
					 PropertyHasChanged("COUNTY");
				 }
			 }
		}

		public string  AUMPHER
		{
			 get { return _aUMPHER; }
			 set
			 {
				 if (_aUMPHER != value)
				 {
					_aUMPHER = value;
					 PropertyHasChanged("AUMPHER");
				 }
			 }
		}

		public string  TUMBON
		{
			 get { return _tUMBON; }
			 set
			 {
				 if (_tUMBON != value)
				 {
					_tUMBON = value;
					 PropertyHasChanged("TUMBON");
				 }
			 }
		}

		public string  PROVINCE
		{
			 get { return _pROVINCE; }
			 set
			 {
				 if (_pROVINCE != value)
				 {
					_pROVINCE = value;
					 PropertyHasChanged("PROVINCE");
				 }
			 }
		}

		public string  TERM_NO
		{
			 get { return _tERM_NO; }
			 set
			 {
				 if (_tERM_NO != value)
				 {
					_tERM_NO = value;
					 PropertyHasChanged("TERM_NO");
				 }
			 }
		}

		public string  DECISION_NO
		{
			 get { return _dECISION_NO; }
			 set
			 {
				 if (_dECISION_NO != value)
				 {
					_dECISION_NO = value;
					 PropertyHasChanged("DECISION_NO");
				 }
			 }
		}

		public string  CASE_NO
		{
			 get { return _cASE_NO; }
			 set
			 {
				 if (_cASE_NO != value)
				 {
					_cASE_NO = value;
					 PropertyHasChanged("CASE_NO");
				 }
			 }
		}

		public string  RESULT_NO
		{
			 get { return _rESULT_NO; }
			 set
			 {
				 if (_rESULT_NO != value)
				 {
					_rESULT_NO = value;
					 PropertyHasChanged("RESULT_NO");
				 }
			 }
		}

		public int?  RESULT_TYPE
		{
			 get { return _rESULT_TYPE; }
			 set
			 {
				 if (_rESULT_TYPE != value)
				 {
					_rESULT_TYPE = value;
					 PropertyHasChanged("RESULT_TYPE");
				 }
			 }
		}

		public int?  COURT_TYPE_ID
		{
			 get { return _cOURT_TYPE_ID; }
			 set
			 {
				 if (_cOURT_TYPE_ID != value)
				 {
					_cOURT_TYPE_ID = value;
					 PropertyHasChanged("COURT_TYPE_ID");
				 }
			 }
		}

		public int?  COURT_B_SUPREME_TYPE_ID
		{
			 get { return _cOURT_B_SUPREME_TYPE_ID; }
			 set
			 {
				 if (_cOURT_B_SUPREME_TYPE_ID != value)
				 {
					_cOURT_B_SUPREME_TYPE_ID = value;
					 PropertyHasChanged("COURT_B_SUPREME_TYPE_ID");
				 }
			 }
		}

		public int?  COURT_A_SUPREME_TYPE_ID
		{
			 get { return _cOURT_A_SUPREME_TYPE_ID; }
			 set
			 {
				 if (_cOURT_A_SUPREME_TYPE_ID != value)
				 {
					_cOURT_A_SUPREME_TYPE_ID = value;
					 PropertyHasChanged("COURT_A_SUPREME_TYPE_ID");
				 }
			 }
		}

		public int?  COURT_CONSTITU_TYPE
		{
			 get { return _cOURT_CONSTITU_TYPE; }
			 set
			 {
				 if (_cOURT_CONSTITU_TYPE != value)
				 {
					_cOURT_CONSTITU_TYPE = value;
					 PropertyHasChanged("COURT_CONSTITU_TYPE");
				 }
			 }
		}

		public DateTime?  SIGN_DATE
		{
			 get { return _sIGN_DATE; }
			 set
			 {
				 if (_sIGN_DATE != value)
				 {
					_sIGN_DATE = value;
					 PropertyHasChanged("SIGN_DATE");
				 }
			 }
		}

		public DateTime?  WARN_SIGN_DATE
		{
			 get { return _wARN_SIGN_DATE; }
			 set
			 {
				 if (_wARN_SIGN_DATE != value)
				 {
					_wARN_SIGN_DATE = value;
					 PropertyHasChanged("WARN_SIGN_DATE");
				 }
			 }
		}

		public DateTime?  VOTE_DATE
		{
			 get { return _vOTE_DATE; }
			 set
			 {
				 if (_vOTE_DATE != value)
				 {
					_vOTE_DATE = value;
					 PropertyHasChanged("VOTE_DATE");
				 }
			 }
		}

		public DateTime?  RESULT_DATE
		{
			 get { return _rESULT_DATE; }
			 set
			 {
				 if (_rESULT_DATE != value)
				 {
					_rESULT_DATE = value;
					 PropertyHasChanged("RESULT_DATE");
				 }
			 }
		}

		public DateTime?  WARN_RESULT_DATE
		{
			 get { return _wARN_RESULT_DATE; }
			 set
			 {
				 if (_wARN_RESULT_DATE != value)
				 {
					_wARN_RESULT_DATE = value;
					 PropertyHasChanged("WARN_RESULT_DATE");
				 }
			 }
		}

		public string  REQUEST_NAME
		{
			 get { return _rEQUEST_NAME; }
			 set
			 {
				 if (_rEQUEST_NAME != value)
				 {
					_rEQUEST_NAME = value;
					 PropertyHasChanged("REQUEST_NAME");
				 }
			 }
		}

		public string  RESPON_NAME
		{
			 get { return _rESPON_NAME; }
			 set
			 {
				 if (_rESPON_NAME != value)
				 {
					_rESPON_NAME = value;
					 PropertyHasChanged("RESPON_NAME");
				 }
			 }
		}

		public string  ALLEGATION
		{
			 get { return _aLLEGATION; }
			 set
			 {
				 if (_aLLEGATION != value)
				 {
					_aLLEGATION = value;
					 PropertyHasChanged("ALLEGATION");
				 }
			 }
		}

		public int?  LAWYER_ID
		{
			 get { return _lAWYER_ID; }
			 set
			 {
				 if (_lAWYER_ID != value)
				 {
					_lAWYER_ID = value;
					 PropertyHasChanged("LAWYER_ID");
				 }
			 }
		}

		public DateTime?  CREATED_DATE_TIME
		{
			 get { return _cREATED_DATE_TIME; }
			 set
			 {
				 if (_cREATED_DATE_TIME != value)
				 {
					_cREATED_DATE_TIME = value;
					 PropertyHasChanged("CREATED_DATE_TIME");
				 }
			 }
		}

		public int?  CREATED_USER
		{
			 get { return _cREATED_USER; }
			 set
			 {
				 if (_cREATED_USER != value)
				 {
					_cREATED_USER = value;
					 PropertyHasChanged("CREATED_USER");
				 }
			 }
		}

		public DateTime?  UPDATED_DATE_TIME
		{
			 get { return _uPDATED_DATE_TIME; }
			 set
			 {
				 if (_uPDATED_DATE_TIME != value)
				 {
					_uPDATED_DATE_TIME = value;
					 PropertyHasChanged("UPDATED_DATE_TIME");
				 }
			 }
		}

		public int?  UPDATED_USER
		{
			 get { return _uPDATED_USER; }
			 set
			 {
				 if (_uPDATED_USER != value)
				 {
					_uPDATED_USER = value;
					 PropertyHasChanged("UPDATED_USER");
				 }
			 }
		}

		public int?  STATUS
		{
			 get { return _sTATUS; }
			 set
			 {
				 if (_sTATUS != value)
				 {
					_sTATUS = value;
					 PropertyHasChanged("STATUS");
				 }
			 }
		}

		public string  REMARK
		{
			 get { return _rEMARK; }
			 set
			 {
				 if (_rEMARK != value)
				 {
					_rEMARK = value;
					 PropertyHasChanged("REMARK");
				 }
			 }
		}

		public int?  COURT_APPEALS_ID
		{
			 get { return _cOURT_APPEALS_ID; }
			 set
			 {
				 if (_cOURT_APPEALS_ID != value)
				 {
					_cOURT_APPEALS_ID = value;
					 PropertyHasChanged("COURT_APPEALS_ID");
				 }
			 }
		}


		#endregion

		#region not support PropertyChangeEvent

		protected virtual void PropertyHasChanged(string propertyName)
		{
			return;
		}

		#endregion
/********** not support Validation
		#region Validation

		internal override void AddValidationRules()
		{
			ValidationRules.AddRules(new Validation.ValidateRuleNotNull("MASTER_ID", "MASTER_ID"));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("CODE_NO", "CODE_NO",10));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("COUNTY_NO", "COUNTY_NO",3));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("COUNTY", "COUNTY",50));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("AUMPHER", "AUMPHER",50));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("TUMBON", "TUMBON",50));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("PROVINCE", "PROVINCE",50));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("TERM_NO", "TERM_NO",20));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("DECISION_NO", "DECISION_NO",20));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("CASE_NO", "CASE_NO",20));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("RESULT_NO", "RESULT_NO",20));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("REQUEST_NAME", "REQUEST_NAME",2147483647));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("RESPON_NAME", "RESPON_NAME",2147483647));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("ALLEGATION", "ALLEGATION",2147483647));
			ValidationRules.AddRules(new Validation.ValidateRuleStringMaxLength("REMARK", "REMARK",2147483647));
		}

		#endregion
********/

	}
}
